<!DOCTYPE html>
<html lang="zh-cn">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>javascript 阶段</title>
</head>
<body>


    <script>
        // 数组可以储存一系列的数据
            // 数组有索引值
            // 数组有length属性

        // 定义数组
        var arr = [80,90,60,40,20];
        console.log(arr);
        console.log(arr[0]);// 80
        console.log(arr[5]);// undefined (不要把length属性值作为索引下标)
        // 循环数组(想起索引值，想起length属性)
        // 循环一次做不到,数组中的数据两两比较，交换位置
        // 记录数组的长度
        var len  = arr.length;
        // 定义计数器变量
        var count = 0;
        // 外循环
        for(var i = 0 ; i < len ; i ++){
            // 内循环
            for(var j = 0 ; j < len - 1 ; j ++){
                // 数组前后两个数组
                // 前一个：arr[j]
                // 后一个：arr[j+1]
                if(arr[j] < arr[j + 1]){
                    // 把较小的数值记录起来
                    var temp = arr[j];
                    // 把后者的数值赋值给前者
                    arr[j] = arr[j + 1];
                    // 把较小的值赋值给后者
                    arr[j + 1] = temp;
                }
                // 每内循环一次 就加1
                count ++;
            }
        }
        console.log(arr);// [90, 80, 60, 40, 20]
        console.log("总共执行的次数:"+ count);// 20次


    </script>
</body>
</html>

<!-- 
JS基本常识
{}  大括号   

1.可以表示对象 ,以键值对形式出现的数据集合
var obj = {key: value};// 键值对
var opt = {x:100,x:200,y:150};// 如果是键(key)重复了，数据被覆盖。key 是唯一的
取值
obj.key 
obj[key]

2. 可以表示作用域  
var foo = function(){ 作用域 console.log("xxx") }



[] 方括号 
1. 表示数组
var arr = [] 
var arrColor = ["red","green","blue"];

舍友：
爱他一下，就让他多敲一会代码！

() 小括号
1. 表示函数
var foo = function() { console.log("yyy") } // 定义函数
    foo();// 调用函数

 -->